home *** CD-ROM | disk | FTP | other *** search
/ InterCD 2000 September / september_2000.iso / intercd / root / ^Linux / cfengine-1.5.3 / src / cf.extern.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-05-25  |  9.6 KB  |  354 lines

  1. /* cfengine for GNU
  2.  
  3.         Copyright (C) 1995
  4.         Free Software Foundation, Inc.
  5.  
  6.    This file is part of GNU cfengine - written and maintained 
  7.    by Mark Burgess, Dept of Computing and Engineering, Oslo College,
  8.    Dept. of Theoretical physics, University of Oslo
  9.  
  10.    This program is free software; you can redistribute it and/or modify it
  11.    under the terms of the GNU General Public License as published by the
  12.    Free Software Foundation; either version 2, or (at your option) any
  13.    later version.
  14.  
  15.    This program is distributed in the hope that it will be useful,
  16.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  17.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  18.    GNU General Public License for more details.
  19.  
  20.    You should have received a copy of the GNU General Public License
  21.    along with this program; if not, write to the Free Software
  22.    Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  23.  
  24.  
  25. /*******************************************************************/
  26. /*                                                                 */
  27. /*  extern HEADER for cfengine                                     */
  28. /*                                                                 */
  29. /*******************************************************************/
  30.  
  31. /* TCP wrappers */
  32.  
  33. extern int     allow_severity;
  34. extern int     deny_severity;
  35.  
  36. /* cfengine */
  37.  
  38. extern int SD;
  39. extern int AUTHENTICATED;
  40.  
  41. extern char *tzname[2];
  42. extern char *optarg;
  43. extern int optind;
  44. extern struct option OPTIONS[];
  45. extern int CFSIGNATURE;
  46. extern char CFDES1[8];
  47. extern char CFDES2[8];
  48. extern char CFDES3[8];
  49.  
  50. extern char *VPRECONFIG;
  51. extern char *VRCFILE;
  52.  
  53. extern char VARCH[];
  54. extern char VYEAR[];
  55. extern char *ACTIONTEXT[]; 
  56. extern char *ACTIONID[];
  57. extern char *CLASSTEXT[];
  58. extern char *CLASSATTRIBUTES[clssattr][attrdim];
  59. extern char *FILEACTIONTEXT[];
  60. extern char *COMMATTRIBUTES[];
  61. extern char VINPUTFILE[];
  62. extern char VCANONICALFILE[];
  63. extern char VCURRENTFILE[];
  64. extern char VLOGFILE[];
  65. extern char VSETUIDLOG[];
  66. extern FILE *VLOGFP;
  67. extern char VEDITABORT[];
  68. extern char LISTSEPARATOR;
  69. extern char REPOSCHAR;
  70. extern char DISCOMP;
  71. extern char USESHELL;
  72. extern char PURGE;
  73. extern char CHECKSUM;
  74. extern int CHECKSUMUPDATES;
  75. extern int  DISABLESIZE;
  76.  
  77. extern char VLOGDIR[];
  78. extern char VLOCKDIR[];
  79.  
  80. extern struct tm TM1;
  81. extern struct tm TM2;
  82.  
  83. extern int ERRORCOUNT;
  84. extern int NUMBEROFEDITS;
  85. extern time_t CFSTARTTIME;
  86. extern int CF_TIMEOUT;
  87.  
  88. extern struct utsname VSYSNAME;
  89.  
  90. extern int LINENUMBER;
  91. extern mode_t DEFAULTMODE;
  92. extern mode_t DEFAULTSYSTEMMODE;
  93. extern int HAVEUID;
  94. extern char VUIDNAME[maxvarsize];
  95. extern char VGIDNAME[maxvarsize];
  96. extern char CFSERVER[maxvarsize];
  97. extern char VIPADDRESS[];
  98. extern char VPREFIX[];
  99. extern int VRECURSE;
  100. extern int VAGE;
  101. extern int RPCTIMEOUT;
  102. extern char MOUNTMODE;
  103. extern char DELETEDIR;
  104. extern char DELETEFSTAB;
  105. extern char FORCE;
  106. extern char STEALTH;
  107.  
  108. extern short LINKSILENT;
  109. extern char  LINKTYPE;
  110. extern char  AGETYPE;
  111. extern char  COPYTYPE;
  112. extern char  DEFAULTCOPYTYPE;
  113. extern char  LINKDIRS;
  114. extern char  LOGP;
  115. extern char  INFORMP;
  116.  
  117. extern char   CURRENTITEM[bufsize];
  118. extern char   CURRENTPATH[bufsize];
  119. extern char     GROUPBUFF[bufsize];
  120. extern char    ACTIONBUFF[bufsize];
  121. extern char     CLASSBUFF[bufsize];
  122. extern char ALLCLASSBUFFER[bufsize];
  123. extern char      LINKFROM[bufsize];
  124. extern char        LINKTO[bufsize];
  125. extern char         ERROR[bufsize];
  126. extern char     MOUNTFROM[bufsize];
  127. extern char     MOUNTONTO[bufsize];
  128. extern char   DESTINATION[bufsize];
  129. extern char   IMAGEACTION[bufsize];
  130. extern char CHECKSUMDB[bufsize];
  131.  
  132.  
  133. extern char *HASH[hashtablesize];
  134.  
  135. extern char VBUFF[bufsize];
  136. extern char OUTPUT[bufsize*2];
  137.  
  138. extern char VFACULTY[maxvarsize];
  139. extern char VDOMAIN[maxvarsize];
  140. extern char VSYSADM[maxvarsize];
  141. extern char VNETMASK[maxvarsize];
  142. extern char VBROADCAST[maxvarsize];
  143. extern char VMAILSERVER[bufsize];
  144. extern struct Item *VTIMEZONE;
  145. extern char VDEFAULTROUTE[maxvarsize];
  146. extern char VNFSTYPE[maxvarsize];
  147. extern char VREPOSITORY[bufsize];
  148. extern char VIFNAME[16];
  149. extern char VIFNAMEOVERRIDE[16];
  150. extern enum classes VSYSTEMHARDCLASS;
  151. extern char VFQNAME[];
  152. extern char VUQNAME[];
  153. extern char LOGFILE[];
  154.  
  155. extern struct Item *VEXCLUDECOPY;
  156. extern struct Item *VEXCLUDELINK;
  157. extern struct Item *VCOPYLINKS;
  158. extern struct Item *VLINKCOPIES;
  159. extern struct Item *VEXCLUDEPARSE;
  160. extern struct Item *VCPLNPARSE;
  161. extern struct Item *VINCLUDEPARSE;
  162. extern struct Item *VIGNOREPARSE;
  163. extern struct Item *VACLBUILD;
  164.  
  165. extern struct Item *VMOUNTLIST;
  166. extern struct Item *VHEAP;      /* Points to the base of the attribute heap */
  167. extern struct Item *VNEGHEAP;
  168. extern struct Item *VMOUNTABLES;         /* Points to the list of mountables */
  169. extern struct Item *VMOUNTED;
  170. extern struct Tidy *VTIDY;               /* Points to the list of tidy specs */
  171. extern struct Disk *VREQUIRED;              /* List of required file systems */
  172. extern struct Disk *VREQUIREDTOP;
  173. extern struct ShellComm *VSCRIPT;              /* List of scripts to execute */
  174. extern struct ShellComm *VSCRIPTTOP;
  175. extern struct Interface *VIFLIST;
  176. extern struct Interface *VIFLISTTOP;
  177. extern struct Mounted *MOUNTED;             /* Files systems already mounted */
  178. extern struct Item VDEFAULTBINSERVER;
  179. extern struct Item *VBINSERVERS;
  180. extern struct Link *VLINK;
  181. extern struct File *VFILE;
  182. extern struct Item *VHOMESERVERS;
  183. extern struct Item *VSETUIDLIST;
  184. extern struct Disable *VDISABLELIST;
  185. extern struct Disable *VDISABLETOP;
  186. extern struct File *VMAKEPATH;
  187. extern struct File *VMAKEPATHTOP;
  188. extern struct Link *VCHLINK;
  189. extern struct Item *VIGNORE;
  190. extern struct Item *VHOMEPATLIST;
  191. extern struct Item *EXTENSIONLIST;
  192. extern struct Item *SUSPICIOUSLIST;
  193. extern struct Item *VRESOLVE;
  194. extern struct MiscMount *VMISCMOUNT;
  195. extern struct MiscMount *VMISCMOUNTTOP;
  196. extern struct Item *VIMPORT;
  197. extern struct Item *VACTIONSEQ;
  198. extern struct Item *VACCESSLIST;
  199. extern struct Item *VADDCLASSES;
  200. extern struct Item *VALLADDCLASSES;
  201. extern struct Edit *VEDITLIST;
  202. extern struct Edit *VEDITLISTTOP;
  203. extern struct CFACL  *VACLLIST;
  204. extern struct CFACL  *VACLLISTTOP;
  205. extern struct UnMount *VUNMOUNT;
  206. extern struct UnMount *VUNMOUNTTOP;
  207. extern struct Item *VCLASSDEFINE;
  208. extern struct Image *VIMAGE;
  209. extern struct Image *VIMAGETOP;
  210. extern struct Process *VPROCLIST;
  211. extern struct Process *VPROCTOP;
  212. extern struct Item *VSERVERLIST;
  213.  
  214. extern struct Item *VREPOSLIST;
  215.  
  216. extern struct Auth *VADMIT;
  217. extern struct Auth *VDENY;
  218. extern struct Auth *VADMITTOP;
  219. extern struct Auth *VDENYTOP;
  220.  
  221. /* Associated variables which simplify logic */
  222.  
  223. extern struct Link *VLINKTOP;
  224. extern struct Link *VCHLINKTOP;
  225. extern struct Tidy *VTIDYTOP;
  226. extern struct File *VFILETOP;
  227.  
  228. extern char VERSION[];
  229. extern char *COPYRIGHT;
  230.  
  231. extern short DEBUG;
  232. extern short D1;
  233. extern short D2;
  234. extern short D3;
  235.  
  236. extern short ISCFENGINE;
  237.  
  238. extern short VERBOSE;
  239. extern short INFORM;
  240. extern short LOGGING;
  241. extern short INFORM_save;
  242. extern short LOGGING_save;
  243. extern short CFPARANOID;
  244. extern short SHOWACTIONS;
  245.  
  246. extern short TIDYDIRS;
  247. extern short TRAVLINKS;
  248. extern short DEADLINKS;
  249. extern short PTRAVLINKS;
  250. extern short DONTDO;
  251. extern short IFCONF;
  252. extern short PARSEONLY;
  253. extern short GOTMOUNTINFO;
  254. extern short NOMOUNTS;
  255. extern short NOMODULES;
  256. extern short NOPROCS;
  257. extern short NOFILECHECK;
  258. extern short NOTIDY;
  259. extern short NOSCRIPTS;
  260. extern short PRSYSADM;
  261. extern short MOUNTCHECK;
  262. extern short NOEDITS;
  263. extern short KILLOLDLINKS;
  264. extern short IGNORELOCK;
  265. extern short NOPRECONFIG;
  266. extern short WARNINGS;
  267. extern short NONALPHAFILES;
  268. extern short MINUSF;
  269. extern short NOLINKS;
  270. extern short ENFORCELINKS;
  271. extern short FORCELINK;
  272. extern short NOCOPY;
  273. extern short FORCENETCOPY;
  274. extern short SILENT;
  275. extern short EDITVERBOSE;
  276. extern short FORCECOPY;
  277. extern short IMAGEBACKUP;
  278. extern short ROTATE;
  279. extern int   TIDYSIZE;
  280. extern short USEENVIRON;
  281. extern short PROMATCHES;
  282. extern short EDABORTMODE;
  283. extern short NOPROCS;
  284. extern short UNDERSCORE_CLASSES;
  285. extern short NOHARDCLASSES;
  286. extern short NOSPLAY;
  287.  
  288. extern enum actions ACTION;
  289. extern enum vnames CONTROLVAR;
  290.  
  291. extern mode_t PLUSMASK;
  292. extern mode_t MINUSMASK;
  293.  
  294. extern u_long PLUSFLAG;
  295. extern u_long MINUSFLAG;
  296.  
  297. extern flag  ACTION_IS_LINK;
  298. extern flag  ACTION_IS_LINKCHILDREN;
  299. extern flag  MOUNT_ONTO;
  300. extern flag  MOUNT_FROM;
  301. extern flag  HAVE_RESTART;
  302. extern flag  ACTIONPENDING;
  303. extern flag  HOMECOPY;
  304. extern short  SECURE;
  305.  
  306. extern char *VPSCOMM[];
  307. extern char *VPSOPTS[];
  308. extern char *VMOUNTCOMM[];
  309. extern char *VMOUNTOPTS[];
  310. extern char *VIFDEV[];
  311. extern char *VETCSHELLS[];
  312. extern char *VRESOLVCONF[];
  313. extern char *VHOSTEQUIV[];
  314. extern char *VFSTAB[];
  315. extern char *VMAILDIR[];
  316. extern char *VNETSTAT[];
  317. extern char *ACTIONSEQTEXT[];
  318. extern char *VEDITNAMES[];
  319. extern char *VUNMOUNTCOMM[];
  320. extern char *VRESOURCES[];
  321.  
  322. extern int VTIMEOUT;
  323.  
  324. extern char *SIGNALS[];
  325.  
  326. extern char *tzname[2]; /* see man ctime */
  327.  
  328. extern int SENSIBLEFILECOUNT;
  329. extern int SENSIBLEFSSIZE;
  330. extern int EDITFILESIZE;
  331. extern int VIFELAPSED;
  332. extern int VEXPIREAFTER;
  333. extern int VDEFAULTIFELAPSED;
  334. extern int VDEFAULTEXPIREAFTER;
  335. extern int AUTOCREATED;
  336.  
  337. extern enum fileactions FILEACTION;
  338.  
  339. extern unsigned short PORTNUMBER;
  340.  
  341. extern int CURRENTLINENUMBER;
  342. extern struct Item *CURRENTLINEPTR;
  343.  
  344. extern int EDITGROUPLEVEL;
  345. extern int SEARCHREPLACELEVEL;
  346. extern int FOREACHLEVEL;
  347.  
  348. extern char *COMMENTSTART, *COMMENTEND;
  349.  
  350. /* GNU REGEXP */
  351.  
  352. extern struct re_pattern_buffer *SEARCHPATTBUFF;
  353. extern struct re_pattern_buffer *PATTBUFFER;
  354.